// 12 联合类型
let cityId: string | number;
cityId = '3322432';
cityId = 34234655;


// 13. 类型断言  Assertion  /əˈsɜːrʃ(ə)n/
/*
    有些情况下，因为ts的限制，导致异步请求的数据
    或者需要通过dom获取的元素，是未知的
    无法预先定义其类型，所以会存在隐患

    ts就会提示有些错误，这些情景，已知作为程序员在使用的时候是不会出错的
    但是要让ts跳过编译和正常输出，所以需要进行断言

    断言内os: 别报错了，我确定我在干什么，请相信我。
*/ 
const box = document.querySelector('#app');
// 方式1 HTMLElement  HTML元素类型
// (box as HTMLElement).style.backgroundColor = 'skyblue';
// 方式2  使用泛型
(<HTMLElement>box).style.backgroundColor = 'hotpink';


